package com.xbongbong.crm.service;

import com.xbongbong.paas.domain.entity.ext.PaasFormEntityExt;
import com.xbongbong.paas.pojo.dto.FormDataListDTO;
import com.xbongbong.paas.toolbox.exception.XbbException;
import com.xbongbong.parent.pojo.list.CustomerCommunicateAnalysisVO;
import com.xbongbong.parent.pojo.list.FieldListPojo;
import com.xbongbong.pro.formexplain.pojo.HandleExplainPojo;
import com.xbongbong.pro.weblist.pojo.vo.CommunicateVO;

/**
 * @author sunshaoxiang
 * @ClassName CustomerCommunicateListService
 * @Description 跟进记录列表页接口
 * @Date 2022/5/31 15:09
 * @Version 1.0
 **/
public interface CustomerCommunicateListService {

    /**
     * 获取表单
     * @param formId
     * @param corpid
     * @return
     * @throws XbbException
     */
    PaasFormEntityExt getForm(Long formId, String corpid) throws XbbException;

    /**
     * 获取访客计划的列表数据
     * @param formDataListDTO
     * @return
     * @throws XbbException
     */
    CommunicateVO list(FormDataListDTO formDataListDTO) throws XbbException;

    /**
     * 获取并封装解释
     * @param fieldListPojo
     * @return
     * @throws XbbException
     */
    HandleExplainPojo getExplain(FieldListPojo fieldListPojo) throws XbbException;

    /**
     * 获取并解析数据
     * @param formDataListDTO
     * @param explainPojo
     * @return
     * @throws XbbException
     */
    CustomerCommunicateAnalysisVO getData(FormDataListDTO formDataListDTO, HandleExplainPojo explainPojo) throws XbbException;

}
